package com.scy.java.object.stad;
//加载顺序：加载类----静态变量 静态代码块（先后顺序）----成员变量 构造代码块（先后顺序）----构造方法
public class StaticDemo {
    //静态变量
    static int cut = 6;//常量
    //成员变量
    int num = 1000;
    //静态代码块-->先后顺序执行
    static {
        cut+=9;
        System.out.println("我是静态代码块");
    }
    //构造代码块
    {
        this.num=2000;
        System.out.println("我是构造代码块");

    }

    //构造器方法
    public StaticDemo() {
        this.num =3000;
        System.out.println("我是构造方法");
    }

    public static void main(String[] args) {
        System.out.println(cut);//5
        StaticDemo sd = new StaticDemo();
        System.out.println(sd.num);//3000
        System.out.println("------------");
        //第一次创建对象
        //静态吗，没有执行，说明只加载一次
        StaticDemo sd1 = new StaticDemo();

    }
    static {
        cut/=3;
    }
}
